package com.company.genealogy.web.service;

import java.util.List;
import java.util.Map;

/**
 * 用户贡献服务接口
 */
public interface UserContributionService {
    
    /**
     * 增加用户贡献
     * 
     * @param userId 用户ID
     * @param clanId 家族ID
     * @param type 贡献类型
     * @param content 贡献内容
     * @param points 贡献积分
     * @return 是否成功
     */
    boolean addContribution(Long userId, Long clanId, String type, String content, Integer points);
    
    /**
     * 获取用户贡献排行榜
     * 
     * @param clanId 家族ID
     * @param limit 限制数量
     * @return 排行榜
     */
    List<Map<String, Object>> getTopContributors(Long clanId, int limit);
    
    /**
     * 获取用户贡献统计
     * 
     * @param userId 用户ID
     * @param clanId 家族ID
     * @return 贡献统计
     */
    Map<String, Object> getUserContribution(Long userId, Long clanId);
} 